热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

尺寸|感觉_paddleConv2D参数,在手撕数字识别案例中调参数;卷积神经网络的卷积核大小个数,卷积层数如何确定呢?

篇首语:本文由编程笔记#小编为大家整理,主要介绍了paddleConv2D参数,在手撕数字识别案例中调参数;卷积神经网络的卷积核大小个数,卷积层数如何确定呢?相关的知识,希望对你有一定的参考价

篇首语:本文由编程笔记#小编为大家整理,主要介绍了paddle Conv2D参数,在手撕数字识别案例中调参数;卷积神经网络的卷积核大小个数,卷积层数如何确定呢?相关的知识,希望对你有一定的参考价值。





目录

[paddle Conv2D(num_channels=20, num_filters=20](#paddle%20Conv2D(num_channels%3D20%2C%C2%A0num_filters%3D20)

​​在手撕数字识别案例中​​

​​卷积神经网络的卷积核大小、个数,卷积层数如何确定呢? ​​


paddle Conv2D(num_channels=20, num_filters=20

​​模型组网-使用文档-PaddlePaddle深度学习平台​​

学会看paddle 的文档解说:

(二维卷积层)主要用于对输入的特征图进行卷积操作,广泛用于深度学习网络中。Conv2D 根据输入、卷积核、步长(stride)、填充(padding)、空洞大小(dilations)等参数计算输出特征层大小。输入和输出是 NCHW 或 NHWC 格式,其中 N 是 batchsize 大小,C 是通道数,H 是特征高度,W 是特征宽度。

一般就是输入通道和设置的输出通道数;

num_channels:输入通道

num_filters:滤波器就是卷积核。输出的图像就是通道乘以filter个数;

paddle


在手撕数字识别案例中

原来是7720=980,

输入1通道,输出40,2828的图像池化2次,池化:22的最后是7*7的图像;

有的输入通道是3,就是RGB

7740=1960  就是最后的参数,学习率是0.01 这样做效果好一点;

paddle


效果:

paddle


卷积神经网络的卷积核大小、个数,卷积层数如何确定呢?  

下面的手写字卷积神经网络结构图1,最后输出为什么是12个map,即输出12个特征?然后图2又是输出10个特征了?

在达到相同感受野的情况下,卷积核越小,所需要的参数和计算量越小。

卷积核 1排除了。而大小为偶数的卷积核即使对称地加padding也不能保证输入feature map尺寸和输出feature map尺寸不变(画个图算一下就可以发现),2排除了。所以一般都用3作为卷积核大小。

每一层卷积有多少channel数,以及一共有多少层卷积,这些暂时没有理论支撑,一般都是靠感觉去设置几组候选值,然后通过实验挑选出其中的最佳值。这也是现在深度卷积神经网络虽然效果拔群,但是一直为人诟病的原因之一。

多说几句,每一层卷积的channel数和网络的总卷积层数,构成了一个巨大的超参集合,这个超参集合里的最优组合,很可能比目前业界各种fancy的结构还要高效。只是我们一来没有理论去求解这个超参集合里的最优,二来没有足够的计算资源去穷举这个超参集合里的每一个组合,因此我们不知道这个超参集合里的最优组合是啥。



推荐阅读
author-avatar
kas8288408
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有